package cn.iocoder.yudao.module.mqtt.dal.dataobject.devicedriver;

import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 设备驱动 DO
 *
 * @author 管理员
 */
@TableName("mqtt_device_driver")
@KeySequence("mqtt_device_driver_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DeviceDriverDO extends BaseDO {

    /**
     * 主键ID
     */
    @TableId
    private Long id;
    /**
     * 设备ID
     */
    private Long deviceId;
    /**
     * 通讯口ID
     */
    private String commPortId;
    /**
     * 驱动名称
     */
    private String driverName;
    /**
     * 品牌
     */
    private String brand;
    /**
     * 型号
     */
    private String model;
    /**
     * 设备地址
     */
    private String deviceAddress;
    /**
     * 最小采集时间(ms)
     */
    private Integer minCollectTime;
    /**
     * 通讯等待时间(ms)'
     */
    private Integer commWaitTime;
    /**
     * 16位整型
     *
     * 枚举 {@link TODO mqtt_device_int16 对应的类}
     */
    private String int16AddressRange;
    /**
     * 32/64位整型
     *
     * 枚举 {@link TODO mqtt_device_int3264 对应的类}
     */
    private String  int3264AddressRan;
    /**
     * 32/64位浮点型
     *
     * 枚举 {@link TODO mqtt_device_float3264 对应的类}
     */
    private String float3264AddressRange;
    /**
     * 字符串字节序
     *
     * 枚举 {@link TODO mqtt_device_stringbyte 对应的类}
     */
    private String stringByteOrder;
    /**
     * 字符串编码
     *
     * 枚举 {@link TODO mqtt_device_encode 对应的类}
     */
    private String stringEncoding;
    /**
     * 分块采集方式
     *
     * 枚举 {@link TODO mqtt_device_block 对应的类}
     */
    private String blockCollectMode;
    /**
     * 4区16位写功能码
     */
    private String codeWrite;
    /**
     * 通讯间隔时间(ms)'
     */
    private Integer commIntervalTime;
    /**
     * 描述
     */
    private String description;


}